import { mapGetters, mapMutations } from 'vuex';
export default {
  install(Vue) {
    Vue.mixin({
      // mixins: [MescrollMixin, MescrollMoreItemMixin], // 使用mixin
      data() {
        return {
        };
      },
      methods: {
        ...mapMutations(['setCurThemeType']),
		add0 (v){
			if(!v && typeof v !== number) {
				return ''
			}
			if(v < 10) return '0' + v
			else return v
		},
		/**
		 * 货币格式化(分)：xx,xxx
		 * @param s 金额，单位默认分
		 * @param f 默认true true：金额的单位是分，false: 金额的单位是元
		 * @param d 默认true 是否保留小数  小数位位数：2位
		 */
		money(s, f = false, d = true){
			 if (!s && s !== 0) return 0;
			  if (!['string', 'number'].includes(typeof s)) {
			    return s;
			  }
			  // s = typeof s === 'number' ? Number.round(s) : s;
			  s = f ? Number(s) / 100 : s;
			  s = typeof s === 'number' ? this.round(s) : s;
			  const arr = s.toString().match(/([A-Z]*)(.+)/) || [];
			  const x = arr.length > 1 ? arr[1] : '';
			  const y = arr.length > 2 ? arr[2] : '';
			  if (isNaN(Number(y))) {
			    return s;
			  }
			  if (d) {
			    // console.log(d, parseFloat(y).toFixed(2), Number(y).toFixed(2));
			    // return Number(Number(parseFloat(y)).toFixed(d));
			    const ny = parseFloat(y).toFixed(2).toString();
			    const [a, b] = ny.toString().split('.');
			    return (x || '') + a.replace(/\B(?=(\d{3})+(?!\d))/g, ',') + (b ? `.${b}` : '.00');
			  } else {
			    const ny = Number(parseFloat(y).toFixed(2)).toString();
			    return (x || '') + ny.replace(/\B(?=(\d{3})+(?!\d))/g, ',');
			  }
		},
		/**
		 * 处理数字精度
		 * @param value 需要处理的数据
		 * @param decimal 保留小数位
		 */
		round (value, decimal = 2) {
			if (!value) return 0;
			  const pow = 10 ** decimal;
			  return Math.round(value * pow) / pow;
		}
      },
      computed: {
        ...mapGetters(['themeType'])
      },
     
    });
  }
};
